/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Modelo;

import Bean.Usuario;
import Conexion.Conexion;
import Configuracion.AppConfig;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 *
 * @author kriss
 */
public class DAO_Usuario {
    private String SQL = "";
    private PreparedStatement statement;
    ResultSet rs;
    private int id = -1;
    private int bandera = -1;
    private Connection conexion;
    private Usuario usu=null;
    public Usuario getLogin(String usuario, String clave) {
        Conexion con = new Conexion(AppConfig.Servidor, AppConfig.Usuario, AppConfig.Contrasena, AppConfig.BD, AppConfig.Puerto);
        conexion = con.getConexion();
        if (conexion != null) {
            try {
                this.SQL = "SELECT id, id_profesor, usuario, password, rol_id FROM usuario WHERE usuario = ? AND password = MD5(?);";
                this.statement = conexion.prepareStatement(SQL, Statement.RETURN_GENERATED_KEYS);
         
                this.statement.setString(1, usuario);
                this.statement.setString(2, clave);
                
                this.rs = this.statement.executeQuery();

         
                
//                    rs = statement.getGeneratedKeys(); 
                    while (rs.next()) { 
                        usu = new Usuario();
                        
                        usu.setId(rs.getInt(1));
                        usu.setId_profesor(rs.getInt(2));
                        usu.setUsuario(usuario);
                        usu.setPassword(clave);
                        usu.setRol_id(rs.getInt(5));
                        
                        
                    }
                
                if (this.statement != null) { 
                    this.statement.close(); 
                }
            }
            catch (Exception e) { // esta parte es si catcha un error
                System.out.println("Usuario insertado: " + e.getMessage());
                con.cerrarConexion(); // si habia un error, aun cierra la conexión.
            } finally {
                con.cerrarConexion(); // finalmente ciere la conexión.
            }
          

        }
        
        return usu;
    }
}
